import settings from "../utils/settings";
import {
    @SwitchProperty,
    @ButtonProperty,
    @Vigilant,
} from '../utils/vigilance';

@Vigilant("playCMD", `§6快速游玩`, {
    getCategoryComparator: () => (a, b) => {
        const categories = ['主分类','Bedwars 起床战争','Skywars 空岛战争','Murder Mystery 密室杀手','Arcade Games 街机游戏','TNT Games','Wool Games 羊毛游戏','Build Battle 建筑大师','Mega Walls 超级战墙','UHC 极限生存冠军','Classic Games 经典游戏','Blitz SG 闪电饥饿游戏','Cops and Crims 警匪大战','Warlords 战争领主','Smash Heroes 星碎英雄'];
        return categories.indexOf(a.name) - categories.indexOf(b.name)
    }
})

class playCMD {
    constructor() {
        this.initialize(this);
        this.setCategoryDescription('主分类', '');
        this.setCategoryDescription('Bedwars 起床战争', '');
        this.setCategoryDescription('Skywars 空岛战争', '');
        this.setCategoryDescription('Murder Mystery 密室杀手', '');
        this.setCategoryDescription('Arcade Games 街机游戏', '');
        this.setCategoryDescription('TNT Games', '');
        this.setCategoryDescription('Wool Games 羊毛游戏', '');
        this.setCategoryDescription('Build Battle 建筑大师', '');
        this.setCategoryDescription('Mega Walls 超级战墙', '');
        this.setCategoryDescription('UHC 极限生存冠军', '');
        this.setCategoryDescription('Classic Games 经典游戏', '');
        this.setCategoryDescription('Blitz SG 闪电饥饿游戏', '');
        this.setCategoryDescription('Cops and Crims 警匪大战', '');
        this.setCategoryDescription('Warlords 战争领主', '');
        this.setCategoryDescription('Smash Heroes 星碎英雄', '');
    }

    //主分类
    @SwitchProperty({
        name: '/play 指令 开关',
        description: `关闭以后只能通过 /${settings.modulecmd} play 打开这个页面`,
        category: '主分类',
    })
    TogglePlayCMD = true;

    @ButtonProperty({
        name: 'Skyblock',
        description: '/play skyblock',
        category: '主分类',
        placeholder: '点击进入',
    })
    JoinSkyblock() {
        ChatLib.command("play skyblock");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Housing (家园)',
        description: '/hub housing',
        category: '主分类',
        placeholder: '点击进入',
    })
    JoinHousing() {
        ChatLib.command("hub housing");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Pit (天坑乱斗)',
        description: '/play pit',
        category: '主分类',
        placeholder: '点击进入',
    })
    JoinPit() {
        ChatLib.command("play pit");
        Client.currentGui.close();
    }

    //起床战争
    @ButtonProperty({
        name: 'Bedwars Solo (起床战争 单挑)',
        description: '/play bedwars_eight_one',
        category: 'Bedwars 起床战争',
        subcategory: '标准模式',
        placeholder: '点击进入',
    })
    JoinBedwarsSolo() {
        ChatLib.command("play bedwars_eight_one");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Doubles (起床战争 双人)',
        description: '/play bedwars_eight_two',
        category: 'Bedwars 起床战争',
        subcategory: '标准模式',
        placeholder: '点击进入',
    })
    JoinBedwarsDoubles() {
        ChatLib.command("play bedwars_eight_two");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars 3v3v3v3 (起床战争 3v3v3v3)',
        description: '/play bedwars_four_three',
        category: 'Bedwars 起床战争',
        subcategory: '标准模式',
        placeholder: '点击进入',
    })
    JoinBedwars3v3v3v3() {
        ChatLib.command("play bedwars_four_three");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars 4v4v4v4 (起床战争 4v4v4v4)',
        description: '/play bedwars_four_four',
        category: 'Bedwars 起床战争',
        subcategory: '标准模式',
        placeholder: '点击进入',
    })
    JoinBedwars4v4v4v4() {
        ChatLib.command("play bedwars_four_four");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars 4v4 (起床战争 4v4)',
        description: '/play bedwars_two_four',
        category: 'Bedwars 起床战争',
        subcategory: '标准模式',
        placeholder: '点击进入',
    })
    JoinBedwars4v4() {
        ChatLib.command("play bedwars_two_four");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Castle (起床战争 40v40)',
        description: '/play bedwars_castle',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (城池攻防战)',
        placeholder: '点击进入',
    })
    JoinBedwarsCastle() {
        ChatLib.command("play bedwars_castle");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Lucky Doubles (起床战争 幸运方块 双人)',
        description: '/play bedwars_eight_two_lucky',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (幸运方块)',
        placeholder: '点击进入',
    })
    JoinBedwarsLuckyDoubles() {
        ChatLib.command("play bedwars_eight_two_lucky");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Lucky 4v4v4v4 (起床战争 幸运方块 4v4v4v4)',
        description: '/play bedwars_four_four_lucky',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (幸运方块)',
        placeholder: '点击进入',
    })
    JoinBedwarsLucky4v4v4v4() {
        ChatLib.command("play bedwars_four_four_lucky");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Armed Doubles (起床战争 枪械 双人)',
        description: '/play bedwars_eight_two_armed',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (枪械)',
        placeholder: '点击进入',
    })
    JoinBedwarsArmedDoubles() {
        ChatLib.command("play bedwars_eight_two_armed");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Armed 4v4v4v4 (起床战争 枪械 4v4v4v4)',
        description: '/play bedwars_four_four_armed',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (枪械)',
        placeholder: '点击进入',
    })
    JoinBedwarsArmed4v4v4v4() {
        ChatLib.command("play bedwars_four_four_armed");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Ultimate Doubles (起床战争 超能力 双人)',
        description: '/play bedwars_eight_two_ultimate',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (超能力)',
        placeholder: '点击进入',
    })
    JoinBedwarsUltimateDoubles() {
        ChatLib.command("play bedwars_eight_two_ultimate");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Ultimate 4v4v4v4 (起床战争 超能力 4v4v4v4)',
        description: '/play bedwars_four_four_ultimate',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (超能力)',
        placeholder: '点击进入',
    })
    JoinBedwarsUltimate4v4v4v4() {
        ChatLib.command("play bedwars_four_four_ultimate");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Rush Doubles (起床战争 极速 双人)',
        description: '/play bedwars_eight_two_rush',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (极速)',
        placeholder: '点击进入',
    })
    JoinBedwarsRushDoubles() {
        ChatLib.command("play bedwars_eight_two_rush");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Rush 4v4v4v4 (起床战争 极速 4v4v4v4)',
        description: '/play bedwars_four_four_rush',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (极速)',
        placeholder: '点击进入',
    })
    JoinBedwarsRush4v4v4v4() {
        ChatLib.command("play bedwars_four_four_rush");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Voidless Doubles (起床战争 无虚空 双人)',
        description: '/play bedwars_eight_two_voidless',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (无虚空)',
        placeholder: '点击进入',
    })
    JoinBedwarsVoidlessDoubles() {
        ChatLib.command("play bedwars_eight_two_voidless");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Voidless 4v4v4v4 (起床战争 无虚空 4v4v4v4)',
        description: '/play bedwars_four_four_voidless',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (无虚空)',
        placeholder: '点击进入',
    })
    JoinBedwarsVoidless4v4v4v4() {
        ChatLib.command("play bedwars_four_four_voidless");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Swap Doubles (起床战争 交换 双人)',
        description: '/play bedwars_eight_two_swap',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (交换)',
        placeholder: '点击进入',
    })
    JoinBedwarsSwapDoubles() {
        ChatLib.command("play bedwars_eight_two_swap");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bedwars Swap 4v4v4v4 (起床战争 交换 4v4v4v4)',
        description: '/play bedwars_four_four_swap',
        category: 'Bedwars 起床战争',
        subcategory: '实验室模式 (交换)',
        placeholder: '点击进入',
    })
    JoinBedwarsSwap4v4v4v4() {
        ChatLib.command("play bedwars_four_four_swap");
        Client.currentGui.close();
    }

    //空岛战争
    @ButtonProperty({
        name: 'Skywars Normal Solo (空岛战争 普通 单人)',
        description: '/play solo_normal',
        category: 'Skywars 空岛战争',
        subcategory: '普通模式',
        placeholder: '点击进入',
    })
    JoinSkywarsNormalSolo() {
        ChatLib.command("play solo_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Skywars Normal Doubles (空岛战争 普通 双人)',
        description: '/play teams_normal', 
        category: 'Skywars 空岛战争',
        subcategory: '普通模式',
        placeholder: '点击进入',
    })
    JoinSkywarsNormalDoubles() {
        ChatLib.command("play teams_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Skywars Insane Solo (空岛战争 疯狂 单人)',
        description: '/play solo_insane',
        category: 'Skywars 空岛战争',
        subcategory: '疯狂模式',
        placeholder: '点击进入',
    })
    JoinSkywarsInsaneSolo() {
        ChatLib.command("play solo_insane");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Skywars Insane Doubles (空岛战争 疯狂 双人)',
        description: '/play teams_insane',
        category: 'Skywars 空岛战争',
        subcategory: '疯狂模式',
        placeholder: '点击进入',
    })
    JoinSkywarsInsaneDoubles() {
        ChatLib.command("play teams_insane");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Skywars LuckyBlock Solo (空岛战争 幸运方块 单人)',
        description: '/play solo_insane_lucky',
        category: 'Skywars 空岛战争',
        subcategory: '幸运方块',
        placeholder: '点击进入',
    })
    JoinSkywarsLuckyBlockSolo() {
        ChatLib.command("play solo_insane_lucky");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Skywars LuckyBlock Doubles (空岛战争 幸运方块 双人)',
        description: '/play teams_insane_lucky',
        category: 'Skywars 空岛战争',
        subcategory: '幸运方块',
        placeholder: '点击进入',
    })
    JoinSkywarsLuckyBlockDoubles() {
        ChatLib.command("play teams_insane_lucky");
        Client.currentGui.close();
    }

    //密室杀手
    @ButtonProperty({
        name: 'Murder Mystery Classic (密室杀手 经典模式)',
        description: '/play murder_classic',
        category: 'Murder Mystery 密室杀手',
        placeholder: '点击进入',
    })
    JoinMurderMysteryClassic() {
        ChatLib.command("play murder_classic");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Murder Mystery Double Up (密室杀手 双倍模式)',
        description: '/play murder_double_up',
        category: 'Murder Mystery 密室杀手',
        placeholder: '点击进入',
    })
    JoinMurderMysteryDoubleUp() {
        ChatLib.command("play murder_double_up");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Murder Mystery Assassins (密室杀手 刺客模式)',
        description: '/play murder_assassins',
        category: 'Murder Mystery 密室杀手',
        placeholder: '点击进入',
    })
    JoinMurderMysteryAssassins() {
        ChatLib.command("play murder_assassins");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Murder Mystery Infection (密室杀手 感染模式)',
        description: '/play murder_infection',
        category: 'Murder Mystery 密室杀手',
        placeholder: '点击进入',
    })
    JoinMurderMysteryInfection() {
        ChatLib.command("play murder_infection");
        Client.currentGui.close();
    }
    
    //TNT Games
    @ButtonProperty({
        name: 'TNT Tag (烫手TNT)',
        description: '/play tnt_tntag',
        category: 'TNT Games',
        placeholder: '点击进入',
    })
    JoinTNTTag() {
        ChatLib.command("play tnt_tntag");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'TNT Run (方块掘战)',
        description: '/play tnt_tntrun',
        category: 'TNT Games',
        placeholder: '点击进入',
    })
    JoinTNTRun() {
        ChatLib.command("play tnt_tntrun");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'PVP Run (PVP方块掘战)',
        description: '/play tnt_pvprun',
        category: 'TNT Games',
        placeholder: '点击进入',
    })
    JoinPVPRun() {
        ChatLib.command("play tnt_pvprun");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bow Spleef (掘一死箭)',
        description: '/play tnt_bowspleef',
        category: 'TNT Games',
        placeholder: '点击进入',
    })
    JoinBowSpleef() {
        ChatLib.command("play tnt_bowspleef");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Wizards (法师掘战)',
        description: '/play tnt_capture',
        category: 'TNT Games',
        placeholder: '点击进入',
    })
    JoinWizards() {
        ChatLib.command("play tnt_capture");
        Client.currentGui.close();
    }

    //Wool Games (羊毛游戏)
    @ButtonProperty({
        name: 'Wool Wars (羊毛战争)',
        description: '/play wool_wool_wars_two_four',
        category: 'Wool Games 羊毛游戏',
        placeholder: '点击进入',
    })
    JoinWoolWars() {
        ChatLib.command("play wool_wool_wars_two_four");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Capture The Wool (捕捉羊毛大作战)',
        description: '/play wool_capture_the_wool_two_twenty',
        category: 'Wool Games 羊毛游戏',
        placeholder: '点击进入',
    })
    JoinCaptureTheWool() {
        ChatLib.command("play wool_capture_the_wool_two_twenty");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'SheepWars (羊战争)',
        description: '/play wool_sheep_wars_two_six',
        category: 'Wool Games 羊毛游戏',
        placeholder: '点击进入',
    })
    JoinSheepWars() {
        ChatLib.command("play wool_sheep_wars_two_six");
        Client.currentGui.close();
    }

    //建筑大师
    @ButtonProperty({
        name: 'Build Battle Solo (建筑大师 单人)',
        description: '/play build_battle_solo_normal',
        category: 'Build Battle 建筑大师',
        placeholder: '点击进入',
    })
    JoinBuideBattleSolo() {
        ChatLib.command("play build_battle_solo_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Build Battle Teams (建筑大师 团队)',
        description: '/play build_battle_teams_normal',
        category: 'Build Battle 建筑大师',
        placeholder: '点击进入',
    })
    JoinBuideBattleTeams() {
        ChatLib.command("play build_battle_teams_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Build Battle Pro (建筑大师 大师)',
        description: '/play build_battle_solo_pro',
        category: 'Build Battle 建筑大师',
        placeholder: '点击进入',
    })
    JoinBuideBattlePro() {
        ChatLib.command("play build_battle_solo_pro");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Build Battle Guess The Build (建筑大师 建筑猜猜乐)',
        description: '/play build_battle_guess_the_build',
        category: 'Build Battle 建筑大师',
        placeholder: '点击进入',
    })
    JoinBuideBattleGuessTheBuild() {
        ChatLib.command("play build_battle_guess_the_build");
        Client.currentGui.close();
    }

    //警匪大战
    @ButtonProperty({
        name: 'Cops and Crims Defusal (警匪大战 爆破模式)',
        description: '/play mcgo_normal',
        category: 'Cops and Crims 警匪大战',
        placeholder: '点击进入',
    })
    JoinCopsandCrimsDefusal() {
        ChatLib.command("play mcgo_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Cops and Crims Team Deathmatch (警匪大战 团队死斗)',
        description: '/play mcgo_deathmatch',
        category: 'Cops and Crims 警匪大战',
        placeholder: '点击进入',
    })
    JoinCopsandCrimsTeamDeathmatch() {
        ChatLib.command("play mcgo_deathmatch");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Cops and Crims Gun Game (警匪大战 Gun Game)',
        description: '/play mcgo_gungame',
        category: 'Cops and Crims 警匪大战',
        placeholder: '点击进入',
    })
    JoinCopsandCrimsGunGame() {
        ChatLib.command("play mcgo_gungame");
        Client.currentGui.close();
    }

    //UHC
    @ButtonProperty({
        name: 'UHC Solo (极限生存冠军 单人)',
        description: '/play uhc_solo',
        category: 'UHC 极限生存冠军',
        placeholder: '点击进入',
    })
    JoinUHCSolo() {
        ChatLib.command("play uhc_solo");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'UHC Teams of 3 (极限生存冠军 三人)',
        description: '/play uhc_teams',
        category: 'UHC 极限生存冠军',
        placeholder: '点击进入',
    })
    JoinUHCTeams() {
        ChatLib.command("play uhc_teams");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'UHC Speed Solo (极限生存冠军 单人极速)',
        description: '/play speed_solo_normal',
        category: 'UHC 极限生存冠军',
        placeholder: '点击进入',
    })
    JoinUHCSpeedSolo() {
        ChatLib.command("play speed_solo_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'UHC Speed Teams of 3 (极限生存冠军 三人极速)',
        description: '/play speed_team_normal',
        category: 'UHC 极限生存冠军',
        placeholder: '点击进入',
    })
    JoinUHCSpeedTeams() {
        ChatLib.command("play speed_team_normal");
        Client.currentGui.close();
    }

    //超级战墙
    @ButtonProperty({
        name: 'Mega Walls Standard (超级战墙 标准)',
        description: '/play mw_standard',
        category: 'Mega Walls 超级战墙',
        placeholder: '点击进入',
    })
    JoinMegaWallsStandard() {
        ChatLib.command("play mw_standard");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Mega Walls Face Off (超级战墙 对决)',
        description: '/play mw_face_off',
        category: 'Mega Walls 超级战墙',
        placeholder: '点击进入',
    })
    JoinMegaWallsFaceOff() {
        ChatLib.command("play mw_face_off");
        Client.currentGui.close();
    }

    //闪电饥饿游戏
    @ButtonProperty({
        name: 'Blitz SG Solo (闪电饥饿游戏 单挑模式)',
        description: '/play blitz_solo_normal',
        category: 'Blitz SG 闪电饥饿游戏',
        placeholder: '点击进入',
    })
    JoinBlitzSGSolo() {
        ChatLib.command("play blitz_solo_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Blitz SG Teams (闪电饥饿游戏 组队模式)',
        description: '/play blitz_teams_normal',
        category: 'Blitz SG 闪电饥饿游戏',
        placeholder: '点击进入',
    })
    JoinBlitzSGTeams() {
        ChatLib.command("play blitz_teams_normal");
        Client.currentGui.close();
    }

    //战争领主
    @ButtonProperty({
        name: 'Warlords Capture the Flage (战争领主 夺旗)',
        description: '/play warlords_ctf_mini',
        category: 'Warlords 战争领主',
        placeholder: '点击进入',
    })
    JoinWarlordsCTF() {
        ChatLib.command("play warlords_ctf_mini");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Warlords Team Deathmatch (战争领主 团队死斗)',
        description: '/play warlords_team_deathmatch',
        category: 'Warlords 战争领主',
        placeholder: '点击进入',
    })
    JoinWarlordsTDM() {
        ChatLib.command("play warlords_team_deathmatch");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Warlords Team Domination (战争领主 占点)',
        description: '/play warlords_domination',
        category: 'Warlords 战争领主',
        placeholder: '点击进入',
    })
    JoinWarlordsDomination() {
        ChatLib.command("play warlords_domination");
        Client.currentGui.close();
    }

    //星碎英雄
    @ButtonProperty({
        name: 'Smash Heroes Solo (星碎英雄 单挑)',
        description: '/play super_smash_solo_normal',
        category: 'Smash Heroes 星碎英雄',
        placeholder: '点击进入',
    })
    JoinSmashHeroesSolo() {
        ChatLib.command("play super_smash_solo_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Smash Heroes Teams (星碎英雄 团队)',
        description: '/play super_smash_teams_normal',
        category: 'Smash Heroes 星碎英雄',
        placeholder: '点击进入',
    })
    JoinSmashHeroesTeams() {
        ChatLib.command("play super_smash_teams_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Smash Heroes 1v1 (星碎英雄 1v1)',
        description: '/play super_smash_1v1_normal',
        category: 'Smash Heroes 星碎英雄',
        placeholder: '点击进入',
    })
    JoinSmashHeroes1v1() {
        ChatLib.command("play super_smash_1v1_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Smash Heroes 2v2 (星碎英雄 2v2)',
        description: '/play super_smash_2v2_normal',
        category: 'Smash Heroes 星碎英雄',
        placeholder: '点击进入',
    })
    JoinSmashHeroes2v2() {
        ChatLib.command("play super_smash_2v2_normal");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Smash Heroes Friends (星碎英雄 好友 单挑)',
        description: '/play super_smash_friends_normal',
        category: 'Smash Heroes 星碎英雄',
        placeholder: '点击进入',
    })
    JoinSmashHeroesFriends() {
        ChatLib.command("play super_smash_friends_normal");
        Client.currentGui.close();
    }

    //经典游戏
    @ButtonProperty({
        name: 'Turbo Kart Racers (方块赛车)',
        description: '/play tkr',
        category: 'Classic Games 经典游戏',
        placeholder: '点击进入',
    })
    JoinTKR() {
        ChatLib.command("play tkr");
        Client.currentGui.close();
    }
    
    @ButtonProperty({
        name: 'VampireZ (吸血鬼)',
        description: '/play vampirez',
        category: 'Classic Games 经典游戏',
        placeholder: '点击进入',
    })
    JoinVampireZ() {
        ChatLib.command("play vampirez");
        Client.currentGui.close();
    }
    
    @ButtonProperty({
        name: 'Paintball Warfare (彩蛋射击)',
        description: '/play paintball',
        category: 'Classic Games 经典游戏',
        placeholder: '点击进入',
    })
    JoinPaintballWarfare() {
        ChatLib.command("play paintball");
        Client.currentGui.close();
    }
    
    @ButtonProperty({
        name: 'The Walls (战墙)',
        description: '/play walls',
        category: 'Classic Games 经典游戏',
        placeholder: '点击进入',
    })
    JoinTheWalls() {
        ChatLib.command("play walls");
        Client.currentGui.close();
    }
    
    @ButtonProperty({
        name: 'Quakecraft Solo (未来射击 单挑)',
        description: '/play quake_solo',
        category: 'Classic Games 经典游戏',
        subcategory: '未来射击',
        placeholder: '点击进入',
    })
    JoinQuakecraftSolo() {
        ChatLib.command("play quake_solo");
        Client.currentGui.close();
    }
    
    @ButtonProperty({
        name: 'Quakecraft Teams (未来射击 团队)',
        description: '/play quake_teams',
        category: 'Classic Games 经典游戏',
        subcategory: '未来射击',
        placeholder: '点击进入',
    })
    JoinQuakecraftTeams() {
        ChatLib.command("play quake_teams");
        Client.currentGui.close();
    }
    
    @ButtonProperty({
        name: 'Arena Brawl 1v1 (竞技场 1v1)',
        description: '/play arena_1v1',
        category: 'Classic Games 经典游戏',
        subcategory: '竞技场',
        placeholder: '点击进入',
    })
    JoinArenaBrawl1v1() {
        ChatLib.command("play arena_1v1");
        Client.currentGui.close();
    }
    
    @ButtonProperty({
        name: 'Arena Brawl 2v2 (竞技场 2v2)',
        description: '/play arena_2v2',
        category: 'Classic Games 经典游戏',
        subcategory: '竞技场',
        placeholder: '点击进入',
    })
    JoinArenaBrawl2v2() {
        ChatLib.command("play arena_2v2");
        Client.currentGui.close();
    }
    
    @ButtonProperty({
        name: 'Arena Brawl 4v4 (竞技场 4v4)',
        description: '/play arena_4v4',
        category: 'Classic Games 经典游戏',
        subcategory: '竞技场',
        placeholder: '点击进入',
    })
    JoinArenaBrawl4v4() {
        ChatLib.command("play arena_4v4");
        Client.currentGui.close();
    }

    //街机游戏
    @ButtonProperty({
        name: 'Party Games (派对游戏)',
        description: '/play arcade_party_games_1',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinPartyGames() {
        ChatLib.command("play arcade_party_games_1");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Pixel Party (像素派对)',
        description: '/play arcade_pixel_party',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinPixelParty() {
        ChatLib.command("play arcade_pixel_party");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Dropper (心跳水立方)',
        description: '/play arcade_dropper',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinDropper() {
        ChatLib.command("play arcade_dropper");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Farm Hunt (农场躲猫猫)',
        description: '/play arcade_farm_hunt',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinFarmHunt() {
        ChatLib.command("play arcade_farm_hunt");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Blocking Dead (行尸走肉)',
        description: '/play arcade_day_one',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinBlockingDead() {
        ChatLib.command("play arcade_day_one");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Hypixel Says (我说你做)',
        description: '/play arcade_simon_says',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinHypixelSays() {
        ChatLib.command("play arcade_simon_says");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Mini Walls (迷你战墙)',
        description: '/play arcade_mini_walls',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinMiniWalls() {
        ChatLib.command("play arcade_mini_walls");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Hole In The Wall (人体打印机)',
        description: '/play arcade_hole_in_the_wall',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinHoleInTheWall() {
        ChatLib.command("play arcade_hole_in_the_wall");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Pixel Painters (像素画师)',
        description: '/play arcade_pixel_painters',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinPixelPainters() {
        ChatLib.command("play arcade_pixel_painters");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Hide And Seek Prop Hunt (道具躲猫猫)',
        description: '/play arcade_hide_and_seek_prop_hunt',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinHideAndSeekPropHunt() {
        ChatLib.command("play arcade_hide_and_seek_prop_hunt");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Hide And Seek Party pooper (排队躲猫猫)',
        description: '/play arcade_hide_and_seek_party_pooper',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinHideAndSeekPartypooper() {
        ChatLib.command("play arcade_hide_and_seek_party_pooper");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Bounty Hunters (赏金猎人)',
        description: '/play arcade_bounty_hunters',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinBountyHunters() {
        ChatLib.command("play arcade_bounty_hunters");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Dragon Wars (龙之战)',
        description: '/play arcade_dragon_wars',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinDragonWars() {
        ChatLib.command("play arcade_dragon_wars");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Ender Spleef (末影掘战)',
        description: '/play arcade_ender_spleef',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinEnderSpleef() {
        ChatLib.command("play arcade_ender_spleef");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Galaxy Wars (星际战争)',
        description: '/play arcade_starwars',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinGalaxyWars() {
        ChatLib.command("play arcade_starwars");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Throw Out (乱棍之战)',
        description: '/play arcade_throw_out',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinThrowOut() {
        ChatLib.command("play arcade_throw_out");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Football (足球)',
        description: '/play arcade_soccer',
        category: 'Arcade Games 街机游戏',
        placeholder: '点击进入',
    })
    JoinFootball() {
        ChatLib.command("play arcade_soccer");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Zombies Dead End (僵尸末日 穷途末路)',
        description: '/play arcade_zombies_dead_end',
        category: 'Arcade Games 街机游戏',
        subcategory: '僵尸末日',
        placeholder: '点击进入',
    })
    JoinZombiesDeadEnd() {
        ChatLib.command("play arcade_zombies_dead_end");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Zombies Bad Blood (僵尸末日 坏血之宫)',
        description: '/play arcade_zombies_bad_blood',
        category: 'Arcade Games 街机游戏',
        subcategory: '僵尸末日',
        placeholder: '点击进入',
    })
    JoinZombiesBadBlood() {
        ChatLib.command("play arcade_zombies_bad_blood");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Zombies Alien Arcadium (僵尸末日 外星游乐园)',
        description: '/play arcade_zombies_alien_arcadium',
        category: 'Arcade Games 街机游戏',
        subcategory: '僵尸末日',
        placeholder: '点击进入',
    })
    JoinZombiesAlienArcadium() {
        ChatLib.command("play arcade_zombies_alien_arcadium");
        Client.currentGui.close();
    }

    @ButtonProperty({
        name: 'Zombies Prison (僵尸末日 监狱)',
        description: '/play arcade_zombies_prison',
        category: 'Arcade Games 街机游戏',
        subcategory: '僵尸末日',
        placeholder: '点击进入',
    })
    JoinZombiesPrison() {
        ChatLib.command("play arcade_zombies_prison");
        Client.currentGui.close();
    }
    

}

export default new playCMD();